<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>05_JS的运算符</title>
</head>
<body>
    <script>
        //除法运算直接得到直接数字结果，并不会舍弃小数部分
        console.log(6/2);//3
        console.log(3/2);//1.5
        let a=1;
        let b=true;

        //JS比较运算符的任意一侧如果有数字，会把另一侧先转为数字再比较
        console.log(3>10);//false
        console.log('3'>10);//false
        console.log(3>'10');//false
        //== 松散比较运算符，只比较值是否相等
        console.log(a==b);//true
        //=== 严格比较运算符，会先比较类型是否一致，类型一致再比较值
        console.log(a===b)//false "number != boolean"

        //如果比较运算符两侧均为字符串，则会比较左右两侧字符的编码值
        //charCodeAt() 方法返回字符串中指定字符的编码值，如果不写参数，默认看第一个字符的编码值
        console.log('超'>'宇');//true
        console.log('超'.charCodeAt());
        console.log('宇'.charCodeAt());
        console.log('10086'.charCodeAt());//49
        console.log('1'.charCodeAt());//49
        console.log('10086'.charCodeAt(4));//54
        console.log('6'.charCodeAt());//54
        console.log('3'>'10');//true
        console.log('3'.charCodeAt());//51
        console.log('10'.charCodeAt());//49
        let c=0;
        console.log(c==0?'YES':'NO');// YES
        //=是赋值符号，先把c赋值为0，然后将0转为布尔得到false，对于三元运算符来说，false取到的值为NO
        console.log(c=0?'YES':'NO');// NO
    </script>
</body>
</html>